package com.hytc.dao;

import com.hytc.entity.Cart;
import com.hytc.entity.Product;
import com.hytc.entity.User;

import java.util.List;

public interface UserDao {
    /**
     * 根据用户名查询用户对象
     * @param username  用户名
     * @return 用户对象
     */
    public User queryByUsername(String username);

    /**
     * 根据用户名和密码查询用户对象
     * @param username  用户名
     * @param password  密码
     * @return  用户对象
     */
    public User queryByUsernameAndPassword(String username, String password);

    /**
     * 保存用户信息
     * @param user  用户对象
     * @return  返回的-1 就是失效，其余的都是影响条数
     */
    public int saveUser(User user);

    /**
     * 获取商品表
     * @return 列表
     */
    public List<Product> queryBycategory_id();

    /**
     * 获取用户表
     * @return 列表
     */
    public List<User> find();

    /**
     * 获取购物车列表
     * @param id
     * @return 列表
     */
    public List<Cart> cart(Long id);

    /**
     * 查询购物车的信息
     * @param id
     * @param user_id
     * @return true
     */
    public boolean add(int id ,Long user_id);

    /**
     * 在购物车中删除商品
     * @param id
     * @param user_id
     * @return true
     */
    public boolean delete(int id , int user_id);

    /**
     * 向购物车中添加商品
     * @param product
     * @param mount
     * @param id
     */
    public  void addcart(Product product,String mount,Long id);
}
